﻿using System;
using System.Collections.Generic;

namespace BenCaoXuan.Infrastructure.EFCore.MySql;

/// <summary>
/// VIP客户推广佣金记录表（CCPS）
/// </summary>
public partial class CustomerVipCcpsCommission
{
    /// <summary>
    /// 佣金记录ID，主键
    /// </summary>
    public string CcvcId { get; set; } = null!;

    /// <summary>
    /// 推广链接
    /// </summary>
    public string CcvcCps { get; set; } = null!;

    /// <summary>
    /// 推广人ID（VIP客户），关联客户表
    /// </summary>
    public string CcvcPromoterId { get; set; } = null!;

    /// <summary>
    /// 被邀请人ID（新客户），关联客户表
    /// </summary>
    public string CcvcInviteeId { get; set; } = null!;

    /// <summary>
    /// 佣金触发类型：1-被邀请人注册，2-被邀请人消费，3-被邀请人升级VIP
    /// </summary>
    public sbyte? CcvcTriggerType { get; set; }

    /// <summary>
    /// 触发业务单号：如消费订单号、VIP开通单号
    /// </summary>
    public string? CcvcTriggerNo { get; set; }

    /// <summary>
    /// 佣金金额（元）
    /// </summary>
    public decimal CcvcCommissionAmount { get; set; }

    /// <summary>
    /// 佣金比例（%）：如消费金额的5%
    /// </summary>
    public decimal? CcvcCommissionRate { get; set; }

    /// <summary>
    /// 计算基数金额：如被邀请人消费金额、VIP开通费用
    /// </summary>
    public decimal? CcvcBaseAmount { get; set; }

    /// <summary>
    /// 佣金状态：1-待发放，2-已发放
    /// </summary>
    public int CcvcCommissionStatus { get; set; }

    /// <summary>
    /// 佣金发放时间（状态为&quot;已发放&quot;时必填）
    /// </summary>
    public DateTime? CcvcReleaseTime { get; set; }

    /// <summary>
    /// 冻结原因（状态为&quot;已冻结&quot;时填写）
    /// </summary>
    public string? CcvcFreezeReason { get; set; }

    /// <summary>
    /// 取消原因（状态为&quot;已取消&quot;时填写）
    /// </summary>
    public string? CcvcCancelReason { get; set; }

    /// <summary>
    /// 操作人ID：如发放/取消的操作员，关联员工表（系统操作填&quot;sys&quot;）
    /// </summary>
    public string? CcvcOperatorId { get; set; }

    /// <summary>
    /// 记录创建时间（佣金触发时间）
    /// </summary>
    public DateTime CcvcCreateTime { get; set; }

    /// <summary>
    /// 记录更新时间（状态变更时间）
    /// </summary>
    public DateTime CcvcUpdateTime { get; set; }

    /// <summary>
    /// 备注：如&quot;2024Q3邀请活动佣金&quot;
    /// </summary>
    public string? CcvcRemark { get; set; }
}
